home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / t_os / nem / nem.exe / DIALAP.PLP < prev    next >
Text File  |  1991-08-17  |  3KB  |  101 lines

  1. /* auto pilot program 「NEM 2.04」 1991.4.01 By GOOSE(MAF00070) */
  2. /* Dialap(LINETYPE,BAUD,DIALNUM1,DIALNUM2,DIALNUM3);
  3. **   複数のAPに,接続できるまで連続してダイヤルする。
  4. **     LINETYPE:回線種別,ダイヤル回線:{P}
  5. **                       プッシュ回線:{T}
  6. **     BAUD:TOWNS-モデム間の通信速度
  7. **     DIALNUM1:ROAD2アクセスポイントの電話番号文字列(複数なら「,」で区切る)。
  8. **              最後は「,No,」で終わっていること。
  9. **     DIALNUM2:ROAD1(2400BPS)アクセスポイントの電話番号文字列
  10. **              (複数なら「,」で区切る)。
  11. **              最後は「,No,」で終わっていること。
  12. **     DIALNUM3:ROAD1(1200BPS)アクセスポイントの電話番号文字列
  13. **              (複数なら「,」で区切る)。
  14. **              最後は「,No,」で終わっていること。
  15. */              
  16. /* %Dialap { */ 
  17. /*  [LINETYPE,BAUD,DIALNUM1,DIALNUM2,DIALNUM3] */
  18.   /* ROAD2接続用 */
  19.   %putp {
  20.     dispoff({No});wait({4},);type({@P\n});
  21.     wait({20},{discon},{*},);type({C NIF\n});
  22.     wait({20},{discon},{Enter Connection-ID  --->},);
  23.     connect:={Yes};
  24.   };
  25.   /* ROAD1接続用 */
  26.   %type00 {
  27.     dispoff({No});wait({5},);type({.00+});
  28.     wait({20},type00,{46+},type00,{+\n00+},type00,{Enter Connection-ID  --->},);
  29.     connect:={Yes};
  30.   };
  31.   %stopdial {footnote({モデムからOKが来ないよ!});Flash;stop};
  32.   /* ROAD2用 */
  33.   %Call1 {
  34.     %onenum @head(num1,{,});
  35.     case(onenum<>{No},{Yes},{num1:=@body(num1,{,})});
  36.     case(onenum<>{No},
  37.       {Yes},{baud(BAUD);
  38.              display({\nROAD2(}|onenum|{)に電話をかけます\n});
  39.              case(MNP,
  40.                 {Yes},{xon({No});rscs({Yes})},
  41.                 {No},{xon({Yes});rscs({No})}
  42.             );
  43.             %temp {ATD}|LINETYPE|{ }|onenum;
  44.             dialone(temp,putp,Call1)
  45.         }
  46.     )
  47.   };
  48.   /* ROAD1(2400BPS)用 */
  49.   %Call2 {
  50.     %onenum @head(num2,{,});
  51.     case(onenum<>{No},{Yes},{num2:=@body(num2,{,})});
  52.     case(onenum<>{No},
  53.       {Yes},{baud(BAUD);
  54.              display({\nROAD1:2400(}|onenum|{)に電話をかけます\n});
  55.              case(MNP,
  56.                 {Yes},{xon({No});rscs({Yes})},
  57.                 {No},{xon({Yes});rscs({No})}
  58.             );
  59.             %temp {ATD}|LINETYPE|{ }|onenum;
  60.             dialone(temp,type00,Call2)
  61.         }
  62.     )
  63.   };
  64.   /* ROAD1(1200BPS)用 */
  65.   %Call3 {
  66.     %onenum @head(num3,{,});
  67.     case(onenum<>{No},{Yes},{num3:=@body(num3,{,})});
  68.     case(onenum<>{No},
  69.       {Yes},{baud({1200});
  70.              display({\nROAD1:1200(}|onenum|{)に電話をかけます\n});
  71.              xon({Yes});rscs({No});
  72.             %temp {ATD}|LINETYPE|{ }|onenum;
  73.             dialone(temp,type00,Call3)
  74.         }
  75.     )
  76.   };
  77. /* メイン処理 ************************************************************/
  78.   %LINETYPE @Getfield(SETUPF,{LINETYPE});%BAUD     @Getfield(SETUPF,{BAUD});
  79.   %DIALNUM1 @Getfield(SETUPF,{DIALNUM1});%DIALNUM2 @Getfield(SETUPF,{DIALNUM2});
  80.   %DIALNUM3 @Getfield(SETUPF,{DIALNUM3});
  81.   %MNP @Getfield(SETUPF,{MNP});
  82.   %ATCM @Getfield(SETUPF,{ATCOM});
  83.   %YES {im({Yes})};
  84.   var num1[40];var num2[40];var num3[40];var connect[3];connect:={No};
  85.   type({ATZQ0V1X3\n});
  86.   case(ATCM<>{},
  87.     {Yes},{
  88.       type(ATCM|{\n});
  89.       wait({3},{stopdial},{OK},);
  90.     }
  91.   );
  92.   loop({num1:=DIALNUM1;Call1;
  93.         case(connect,{Yes},{im({No})},
  94.           {No},{num2:=DIALNUM2;Call2;
  95.             case(connect,{Yes},{im({No})},
  96.               {No},{num3:=DIALNUM3;Call3;
  97.                 case(connect,{Yes},{im({No})},
  98.                   {No},{im({Yes})}) }) })
  99.        });
  100. /* }; */
  101.